<?php
// +----------------------------------------------------------------------
// | ThinkPHP [ WE CAN DO IT JUST THINK ]
// +----------------------------------------------------------------------
// | Copyright (c) 2006~2018 http://thinkphp.cn All rights reserved.
// +----------------------------------------------------------------------
// | Licensed ( http://www.apache.org/licenses/LICENSE-2.0 )
// +----------------------------------------------------------------------
// | Author: liu21st <liu21st@gmail.com>
// +----------------------------------------------------------------------
use think\facade\Route;

//后台路由
//Route::group(':version/admin', function(){
//    Route::post('register', ':version.adminUser/save');
//    Route::post('login', ':version.adminUser/login');
//});

//api路由

Route::group(':version/admin', function(){

    // 定义用户注册路由
    Route::post('register', ':version.admin.adminUser/save');
    // 定义用户登录路由
    Route::post('login', ':version.admin.adminUser/login');

    Route::get('login', ':version.admin.adminUser/login');

    // 定义菜单资源路由
    Route::resource('menu', ':version.admin.menu');
    // 定义用户登出路由
    Route::post('logout', ':version.admin.adminUser/logout');
    // 定义管理员用户资源路由
    Route::resource('adminUser', ':version.admin.adminUser');
    // 定义会员资源路由
    Route::resource('member', ':version.admin.Member');
    // 定义任务分类资源路由
    Route::resource('taskCategory', ':version.admin.TaskCategory');
    // 定义获取所有任务分类的路由
    Route::get('taskCategoryAll', ':version.admin.TaskCategory/list');
    // 定义获取所有文章分类的路由
    Route::get('articleCategoryAll', ':version.admin.ArticleCategory/all');
    // 定义任务资源路由
    Route::resource('task', ':version.admin.Task');
    // 定义文件上传路由
    Route::post('upload', ':version.Upload/upload');
    // 定义文章分类资源路由
    Route::resource('articleCategory', ':version.admin.ArticleCategory');
    // 定义文章资源路由
    Route::resource('article', ':version.admin.Article');
    // 定义VIP会员资源路由
    Route::resource('vip', ':version.admin.MemberVip');
    // 定义获取所有VIP会员信息的路由
    Route::get('vipAll', ':version.admin.MemberVip/all');
    // 定义任务订单资源路由
    Route::resource('taskOrder', ':version.admin.TaskOrder');
    // 定义获取任务订单状态的路由
    Route::get('taskOrderStatus', ':version.admin.TaskOrder/status');
    // 定义提现申请资源路由
    Route::resource('cashMoney', ':version.admin.CashMoney');
    // 定义获取提现申请状态的路由
    Route::get('cashMoneyStatus', ':version.admin.CashMoney/status');

    // 定义用户资金记录资源路由
    Route::resource('userMoney', ':version.admin.UserMoney');
    // 定义获取用户资金类型列表的路由
    Route::get('userMoneyType', ':version.admin.UserMoney/type');

    // 定义更新会员资金的路由
    Route::put('memberMoney', ':version.admin.Member/money');
    // 定义系统介绍资源路由
    Route::resource('sysIntro', ':version.admin.SysIntro');
    // 定义配置项资源路由
    Route::resource('config', ':version.admin.Config');
    // 定义根据键名获取配置项的路由
    Route::get('configKey', ':version.admin.Config/getByKey');
    // 定义批量更新任务订单状态的路由
    Route::post('taskOrder/batchUpdateStatus', ':version.admin.TaskOrder/batchUpdateStatus');

    Route::get('member/children/:id', ':version.admin.Member/children')
        ->pattern(['id' => '\d+']); // 确保 id 是数字
})->middleware([app\middleware\ApiVerifyMiddleware::class]);

Route::group(':version/api', function(){

    // 定义会员相关的路由资源
    Route::resource('member', ':version.api.Member');

    // 获取任务分类列表的路由
    Route::get('taskCategoryAll', ':version.api.TaskCategory/list');

    // 定义文章分类相关的路由资源
    Route::resource('articleCategory', ':version.api.ArticleCategory');

    // 定义文章相关的路由资源
    Route::resource('article', ':version.api.Article');

    // 获取所有会员等级的路由
    Route::get('vipAll', ':version.api.MemberVip/all');

    // 注册新会员的路由
    Route::post('register', ':version.api.Member/save');

    // 会员登录的路由
    Route::post('login', ':version.api.Member/login');

    // 获取验证码的路由
    Route::get('captcha', ':version.api.Member/captcha');

    // 获取短信验证码的路由
    Route::get('code', ':version.api.Sms/getCode');

    // 忘记密码功能的路由
    Route::post("forgetPassword", ':version.api.Member/forgetPassword');

    // 会员注销的路由
    Route::post('logout', ':version.api.Member/logout');

    // 定义任务相关的路由资源
    Route::resource('task', ':version.api.Task');

    // 文件上传功能的路由
    Route::post('upload', ':version.Upload/upload');

    // 定义文章相关的路由资源（重复定义，应检查是否有必要）
    Route::resource('article', ':version.api.Article');

    // 定义提现相关的路由资源
    Route::resource('cashMoney', ':version.api.CashMoney');

    // 定义任务订单相关的路由资源
    Route::resource('taskOrder', ':version.api.TaskOrder');

    // 定义用户资金相关的路由资源
    Route::resource('userMoney', ':version.api.UserMoney');

    // 获取任务订单状态的路由
    Route::get('taskOrderStatus', ':version.api.TaskOrder/status');

    // 获取微信Token的路由
    Route::get('wechatToken', ':version.api.Wechat/getToken');

    // 定义系统介绍相关的路由资源
    Route::resource('sysIntro', ':version.api.SysIntro');

    // 定义系统配置相关的路由资源
    Route::resource('sysConfig', ':version.api.SysConfig');

    // 根据标记获取系统介绍的路由
    Route::get('getByMark', ':version.api.SysIntro/getByMark');

    // 获取联系人信息的路由
    Route::get('getContacts', ':version.api.Member/getContacts');

    // 获取微信二维码的路由
    Route::get('getQrcode', ':version.api.Wechat/qrcodePlacard');

    // 获取会员等级信息的路由
    Route::get('getVipInfo', ':version.api.Member/getVipInfo');

    Route::post('setPercentage', ':version.api.Member/setPercentage');

    Route::get('allTask', ':version.api.Task/all');

    Route::post('setProportion',  ':version.api.Member/setProportion');

    Route::get('getAllTeam',  ':version.api.Member/getAllTeam');


})->middleware([app\middleware\VerifyMiddleware::class]);
